package com.jy.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;

import com.jy.common.convert.IntegerToBooleanConverter;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.persistence.Convert;

/**
 * <p>
 * 打卡记录表
 * </p>
 *
 * @author fzg
 * @since 2025-01-08
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class CardHistory implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 打卡记录aid
     */
    @TableId(value = "aid", type = IdType.AUTO)
    private Long aid;

    /**
     * 谁打的卡
     */
    private Long userAid;

    /**
     * 打卡地点
     */
    private String cardAddress;

    /**
     * 打卡的地点的经纬度，格式：（经度,纬度）
     */
    private String position;

    /**
     * 打卡时间
     */
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;

    /**
     * 这次打卡获得的积分
     */
    private Integer record;

    /**
     * 这次打卡获得的点赞量
     */
    private Long likeNum;

    /**
     * 这次打卡获得的评论量
     */
    private Long commentNum;

    /**
     * 这次打卡发布的是视频吗？是：1    否：0
     */
    @Convert(converter = IntegerToBooleanConverter.class)
    private Boolean isVideo;

    /**
     * 这次打卡发布的是视频的话，视频URL
     */
    private String vedioUrl;

    /**
     * 这次打卡发布的不是视频的话，图片urls，格式：（url;url;url）
     */
    private String imageUrls;

    /**
     * 打卡文案
     */
    private String copywritting;

    /**
     * 视频封面
     */
    private String videoCover;


    /**
     * 艾特的用户（格式：userAid;userAid.....）
     */
    private String aiteUsers;

    /**
     * 话题aid(格式：aid;aid;aid....)
     */
    private String topics;


    /**
     * 可见范围（公开可见，互关可见，仅自己可见）
     */
    private String seeField;


    /**
     * 打卡城市
     */
    private String cardCity;


}
